<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.16"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>LibTools: CSafeLogs类 参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">LibTools
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.8.16 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',false,false,'search.php','搜索');
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public 成员函数</a> &#124;
<a href="#pro-methods">Protected 成员函数</a> &#124;
<a href="#pri-methods">Private 成员函数</a> &#124;
<a href="#pri-attribs">Private 属性</a> &#124;
<a href="class_c_safe_logs-members.html">所有成员列表</a>  </div>
  <div class="headertitle">
<div class="title">CSafeLogs类 参考</div>  </div>
</div><!--header-->
<div class="contents">

<p>线程安全日志操作类  
 <a href="class_c_safe_logs.html#details">更多...</a></p>

<p><code>#include &lt;<a class="el" href="_safe_log_8h_source.html">SafeLog.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public 成员函数</h2></td></tr>
<tr class="memitem:a8eb7b4e7971918a139c09db5a7926767"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a8eb7b4e7971918a139c09db5a7926767">CSafeLogs</a> ()</td></tr>
<tr class="separator:a8eb7b4e7971918a139c09db5a7926767"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64b9b0012769472f36a4f89c5bf141ef"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a64b9b0012769472f36a4f89c5bf141ef">~CSafeLogs</a> ()</td></tr>
<tr class="separator:a64b9b0012769472f36a4f89c5bf141ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f29f7c86f06e7dac75dccd844c7348b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a9f29f7c86f06e7dac75dccd844c7348b">CSafeLogs</a> (const <a class="el" href="tools_8h.html#a65c91f8d7af3c67b8a21e089fdddd0fe">TCHAR</a> *szLogPath, <a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a> nLogLevel=<a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9abb2c17c44c343a8367060db4175f39ea">LOG_NORMAL</a>, <a class="el" href="tools_8h.html#a57be03562867144161c1bfee95ca8f7c">UINT64</a> nFileMaxSize=<a class="el" href="_safe_log_8h.html#af5f39b12ec7524d513a48e9b662a445a">DEFAULT_LOG_SIZE</a>, <a class="el" href="tools_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a> nfTime=<a class="el" href="_safe_log_8h.html#acf3ddfcd82496629d7ab869a57f2fedd">DEFAULT_FLUSH_TIME</a>)</td></tr>
<tr class="memdesc:a9f29f7c86f06e7dac75dccd844c7348b"><td class="mdescLeft">&#160;</td><td class="mdescRight">构造函数  <a href="class_c_safe_logs.html#a9f29f7c86f06e7dac75dccd844c7348b">更多...</a><br /></td></tr>
<tr class="separator:a9f29f7c86f06e7dac75dccd844c7348b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a972c8fa984c8698181dcefbb2ac492fb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a972c8fa984c8698181dcefbb2ac492fb">SetLogPath</a> (const <a class="el" href="tools_8h.html#a65c91f8d7af3c67b8a21e089fdddd0fe">TCHAR</a> *szLogPath)</td></tr>
<tr class="memdesc:a972c8fa984c8698181dcefbb2ac492fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">设置日志路径  <a href="class_c_safe_logs.html#a972c8fa984c8698181dcefbb2ac492fb">更多...</a><br /></td></tr>
<tr class="separator:a972c8fa984c8698181dcefbb2ac492fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41d1dba7d735f5340dca726f889f5090"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a41d1dba7d735f5340dca726f889f5090">SetLogLevel</a> (<a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a> nLogLevel)</td></tr>
<tr class="memdesc:a41d1dba7d735f5340dca726f889f5090"><td class="mdescLeft">&#160;</td><td class="mdescRight">设置日志级别  <a href="class_c_safe_logs.html#a41d1dba7d735f5340dca726f889f5090">更多...</a><br /></td></tr>
<tr class="separator:a41d1dba7d735f5340dca726f889f5090"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a129a4fcd8c51a5c6830098943cf7bb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a2a129a4fcd8c51a5c6830098943cf7bb">SetWriteConsole</a> (bool isWriteConsole)</td></tr>
<tr class="memdesc:a2a129a4fcd8c51a5c6830098943cf7bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">设置是否输出到控制台  <a href="class_c_safe_logs.html#a2a129a4fcd8c51a5c6830098943cf7bb">更多...</a><br /></td></tr>
<tr class="separator:a2a129a4fcd8c51a5c6830098943cf7bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79ac12b58225066b1533f190a579e64b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a79ac12b58225066b1533f190a579e64b">SetLogFileSize</a> (<a class="el" href="tools_8h.html#a57be03562867144161c1bfee95ca8f7c">UINT64</a> nFileMaxSize)</td></tr>
<tr class="memdesc:a79ac12b58225066b1533f190a579e64b"><td class="mdescLeft">&#160;</td><td class="mdescRight">设置默认日志文件大小，单位（Byte）  <a href="class_c_safe_logs.html#a79ac12b58225066b1533f190a579e64b">更多...</a><br /></td></tr>
<tr class="separator:a79ac12b58225066b1533f190a579e64b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94a6c995167ac24ca71660e48fd0ce32"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a94a6c995167ac24ca71660e48fd0ce32">SetSwitchFile</a> (<a class="el" href="tools_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a> nfTime)</td></tr>
<tr class="memdesc:a94a6c995167ac24ca71660e48fd0ce32"><td class="mdescLeft">&#160;</td><td class="mdescRight">设置切换日志文件时间(单位秒)  <a href="class_c_safe_logs.html#a94a6c995167ac24ca71660e48fd0ce32">更多...</a><br /></td></tr>
<tr class="separator:a94a6c995167ac24ca71660e48fd0ce32"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">写入日志数据</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>参数说明 szLog 待写入的数据缓冲 size 缓冲字符个数的大小 bHead 是否写入日志头 bFlush 是否立即写入文件并换行</p>
<dl class="section return"><dt>返回</dt><dd>返回成功写入的字符个数 </dd></dl>
<dl class="section remark"><dt>备注</dt><dd>如果size为0，则默认的szLog是以'\0'为结束符的字符串 </dd></dl>
</div></td></tr>
<tr class="memitem:a67a16f7ebc22906bf159e3a8f88c5124"><td class="memItemLeft" align="right" valign="top"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a67a16f7ebc22906bf159e3a8f88c5124">WriteLog</a> (const char *szLog, <a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a> size, <a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a> nLogLevel)</td></tr>
<tr class="separator:a67a16f7ebc22906bf159e3a8f88c5124"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b5d1015ebfbb6596c5a889605679c57"><td class="memItemLeft" align="right" valign="top"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a1b5d1015ebfbb6596c5a889605679c57">WriteLog</a> (const char *szLog, <a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a> nLogLevel)</td></tr>
<tr class="separator:a1b5d1015ebfbb6596c5a889605679c57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6c462e9c6af249f86949eeb83b4d7db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#ab6c462e9c6af249f86949eeb83b4d7db">WriteLog</a> (const char *szLog, <a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a> size, <a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a> nLogLevel, bool bHead, bool bFlush)</td></tr>
<tr class="separator:ab6c462e9c6af249f86949eeb83b4d7db"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected 成员函数</h2></td></tr>
<tr class="memitem:aeb6f84401d06477a6dc85cb44f029fc7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#aeb6f84401d06477a6dc85cb44f029fc7">SwitchLogFile</a> ()</td></tr>
<tr class="memdesc:aeb6f84401d06477a6dc85cb44f029fc7"><td class="mdescLeft">&#160;</td><td class="mdescRight">切换日志文件  <a href="class_c_safe_logs.html#aeb6f84401d06477a6dc85cb44f029fc7">更多...</a><br /></td></tr>
<tr class="separator:aeb6f84401d06477a6dc85cb44f029fc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a353b09fdf1a3a8f57d41c0cd94825765"><td class="memItemLeft" align="right" valign="top"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a353b09fdf1a3a8f57d41c0cd94825765">WriteLogHead</a> (<a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a> nLogLevel)</td></tr>
<tr class="memdesc:a353b09fdf1a3a8f57d41c0cd94825765"><td class="mdescLeft">&#160;</td><td class="mdescRight">写入日志头  <a href="class_c_safe_logs.html#a353b09fdf1a3a8f57d41c0cd94825765">更多...</a><br /></td></tr>
<tr class="separator:a353b09fdf1a3a8f57d41c0cd94825765"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ecaa2fd3c7a077e8f5f625e07de1fee"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a7ecaa2fd3c7a077e8f5f625e07de1fee">FlushLog</a> ()</td></tr>
<tr class="memdesc:a7ecaa2fd3c7a077e8f5f625e07de1fee"><td class="mdescLeft">&#160;</td><td class="mdescRight">刷新日志，将缓存中的数据直接写入文件中  <a href="class_c_safe_logs.html#a7ecaa2fd3c7a077e8f5f625e07de1fee">更多...</a><br /></td></tr>
<tr class="separator:a7ecaa2fd3c7a077e8f5f625e07de1fee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7269da8c406a066045bbda712700c568"><td class="memItemLeft" align="right" valign="top"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a7269da8c406a066045bbda712700c568">_WriteLog</a> (const char *szLog, <a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a> size, <a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a> nLogLevel, bool bHead, bool bFlush)</td></tr>
<tr class="separator:a7269da8c406a066045bbda712700c568"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private 成员函数</h2></td></tr>
<tr class="memitem:a7dfffc4e88454b3c3ebfd9ba784f2c8e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a7dfffc4e88454b3c3ebfd9ba784f2c8e">delete_class_copy_operator</a> (<a class="el" href="class_c_safe_logs.html">CSafeLogs</a>)</td></tr>
<tr class="separator:a7dfffc4e88454b3c3ebfd9ba784f2c8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private 属性</h2></td></tr>
<tr class="memitem:a5b6ad5c65a41d59cd6c40a87ca173d93"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_c_file.html">CFile</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a5b6ad5c65a41d59cd6c40a87ca173d93">_file</a></td></tr>
<tr class="memdesc:a5b6ad5c65a41d59cd6c40a87ca173d93"><td class="mdescLeft">&#160;</td><td class="mdescRight">文件类  <a href="class_c_safe_logs.html#a5b6ad5c65a41d59cd6c40a87ca173d93">更多...</a><br /></td></tr>
<tr class="separator:a5b6ad5c65a41d59cd6c40a87ca173d93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abed76fa949bfb689a91dd7f86eb68634"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_c_mutex.html">CMutex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#abed76fa949bfb689a91dd7f86eb68634">_fileMutex</a></td></tr>
<tr class="memdesc:abed76fa949bfb689a91dd7f86eb68634"><td class="mdescLeft">&#160;</td><td class="mdescRight">文件锁  <a href="class_c_safe_logs.html#abed76fa949bfb689a91dd7f86eb68634">更多...</a><br /></td></tr>
<tr class="separator:abed76fa949bfb689a91dd7f86eb68634"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acfec8eab5ce3695c7f3c111bc42b9ddf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="tools_8h.html#a57be03562867144161c1bfee95ca8f7c">UINT64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#acfec8eab5ce3695c7f3c111bc42b9ddf">_nFileMaxSize</a></td></tr>
<tr class="memdesc:acfec8eab5ce3695c7f3c111bc42b9ddf"><td class="mdescLeft">&#160;</td><td class="mdescRight">单个文件大小  <a href="class_c_safe_logs.html#acfec8eab5ce3695c7f3c111bc42b9ddf">更多...</a><br /></td></tr>
<tr class="separator:acfec8eab5ce3695c7f3c111bc42b9ddf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3dd941c690e7a627b27eca4c62f7d91a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="tools_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a3dd941c690e7a627b27eca4c62f7d91a">_nFlushTime</a></td></tr>
<tr class="memdesc:a3dd941c690e7a627b27eca4c62f7d91a"><td class="mdescLeft">&#160;</td><td class="mdescRight">每隔多长时间刷新一次日志  <a href="class_c_safe_logs.html#a3dd941c690e7a627b27eca4c62f7d91a">更多...</a><br /></td></tr>
<tr class="separator:a3dd941c690e7a627b27eca4c62f7d91a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef956466255d247b0353aa78b683cd68"><td class="memItemLeft" align="right" valign="top">time_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#aef956466255d247b0353aa78b683cd68">_tLastWrite</a></td></tr>
<tr class="memdesc:aef956466255d247b0353aa78b683cd68"><td class="mdescLeft">&#160;</td><td class="mdescRight">上一次写入的时间  <a href="class_c_safe_logs.html#aef956466255d247b0353aa78b683cd68">更多...</a><br /></td></tr>
<tr class="separator:aef956466255d247b0353aa78b683cd68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50d55056cc11242a56bdab1aeb5e43ff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_string_imp_8h.html#a2024a29cf6ecb0ef87f0bc2ef277a7e9">StringImp</a>&lt; <a class="el" href="_string_tools_8h.html#a816fa58fd77499b0edb2c69ebe803d5c">tstring</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a50d55056cc11242a56bdab1aeb5e43ff">_strLogPath</a></td></tr>
<tr class="memdesc:a50d55056cc11242a56bdab1aeb5e43ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">当前的文件路径  <a href="class_c_safe_logs.html#a50d55056cc11242a56bdab1aeb5e43ff">更多...</a><br /></td></tr>
<tr class="separator:a50d55056cc11242a56bdab1aeb5e43ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08dde93476a99eabe315b0c618f05ecc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_string_imp_8h.html#a2024a29cf6ecb0ef87f0bc2ef277a7e9">StringImp</a>&lt; <a class="el" href="_string_tools_8h.html#a816fa58fd77499b0edb2c69ebe803d5c">tstring</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a08dde93476a99eabe315b0c618f05ecc">_strFileName</a></td></tr>
<tr class="memdesc:a08dde93476a99eabe315b0c618f05ecc"><td class="mdescLeft">&#160;</td><td class="mdescRight">当前的文件名称  <a href="class_c_safe_logs.html#a08dde93476a99eabe315b0c618f05ecc">更多...</a><br /></td></tr>
<tr class="separator:a08dde93476a99eabe315b0c618f05ecc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56df89a4b10c88b3f510ce1353e3ff76"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_string_imp_8h.html#a2024a29cf6ecb0ef87f0bc2ef277a7e9">StringImp</a>&lt; <a class="el" href="_string_tools_8h.html#a816fa58fd77499b0edb2c69ebe803d5c">tstring</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a56df89a4b10c88b3f510ce1353e3ff76">_strCurPath</a></td></tr>
<tr class="memdesc:a56df89a4b10c88b3f510ce1353e3ff76"><td class="mdescLeft">&#160;</td><td class="mdescRight">当前文件路径  <a href="class_c_safe_logs.html#a56df89a4b10c88b3f510ce1353e3ff76">更多...</a><br /></td></tr>
<tr class="separator:a56df89a4b10c88b3f510ce1353e3ff76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b0aebbbd5501c2d7924fcf90f169e9c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_find_file_8h.html#a37cc1038758216808d5f75090b093c9a">int</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a4b0aebbbd5501c2d7924fcf90f169e9c">_nLogLevel</a></td></tr>
<tr class="memdesc:a4b0aebbbd5501c2d7924fcf90f169e9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">当前日志级别  <a href="class_c_safe_logs.html#a4b0aebbbd5501c2d7924fcf90f169e9c">更多...</a><br /></td></tr>
<tr class="separator:a4b0aebbbd5501c2d7924fcf90f169e9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a792e2fc28b9c58bf53c98163e055a5dd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_safe_logs.html#a792e2fc28b9c58bf53c98163e055a5dd">_isWriteConsole</a></td></tr>
<tr class="memdesc:a792e2fc28b9c58bf53c98163e055a5dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">是否写入控制台  <a href="class_c_safe_logs.html#a792e2fc28b9c58bf53c98163e055a5dd">更多...</a><br /></td></tr>
<tr class="separator:a792e2fc28b9c58bf53c98163e055a5dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><p>线程安全日志操作类 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8h_source.html">SafeLog.h</a> 第 <a class="el" href="_safe_log_8h_source.html#l00018">18</a> 行定义.</p>
</div><h2 class="groupheader">构造及析构函数说明</h2>
<a id="a8eb7b4e7971918a139c09db5a7926767"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8eb7b4e7971918a139c09db5a7926767">&#9670;&nbsp;</a></span>CSafeLogs() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CSafeLogs::CSafeLogs </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00013">13</a> 行定义.</p>

</div>
</div>
<a id="a64b9b0012769472f36a4f89c5bf141ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a64b9b0012769472f36a4f89c5bf141ef">&#9670;&nbsp;</a></span>~CSafeLogs()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CSafeLogs::~CSafeLogs </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00038">38</a> 行定义.</p>

</div>
</div>
<a id="a9f29f7c86f06e7dac75dccd844c7348b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9f29f7c86f06e7dac75dccd844c7348b">&#9670;&nbsp;</a></span>CSafeLogs() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CSafeLogs::CSafeLogs </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="tools_8h.html#a65c91f8d7af3c67b8a21e089fdddd0fe">TCHAR</a> *&#160;</td>
          <td class="paramname"><em>szLogPath</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a>&#160;</td>
          <td class="paramname"><em>nLogLevel</em> = <code><a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9abb2c17c44c343a8367060db4175f39ea">LOG_NORMAL</a></code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="tools_8h.html#a57be03562867144161c1bfee95ca8f7c">UINT64</a>&#160;</td>
          <td class="paramname"><em>nFileMaxSize</em> = <code><a class="el" href="_safe_log_8h.html#af5f39b12ec7524d513a48e9b662a445a">DEFAULT_LOG_SIZE</a></code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="tools_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a>&#160;</td>
          <td class="paramname"><em>nfTime</em> = <code><a class="el" href="_safe_log_8h.html#acf3ddfcd82496629d7ab869a57f2fedd">DEFAULT_FLUSH_TIME</a></code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>构造函数 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">szLogPath</td><td>日志存放的路径 </td></tr>
    <tr><td class="paramname">nLogLevel</td><td>写入日志的级别 </td></tr>
    <tr><td class="paramname">nFileMaxSize</td><td>单个日志文件的大小,单位（Byte） </td></tr>
    <tr><td class="paramname">nfTime</td><td>每隔多长时间刷新一次日志(切换日志文件，单位为[秒]) </td></tr>
  </table>
  </dd>
</dl>

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00023">23</a> 行定义.</p>

</div>
</div>
<h2 class="groupheader">成员函数说明</h2>
<a id="a7269da8c406a066045bbda712700c568"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7269da8c406a066045bbda712700c568">&#9670;&nbsp;</a></span>_WriteLog()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a> CSafeLogs::_WriteLog </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>szLog</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a>&#160;</td>
          <td class="paramname"><em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a>&#160;</td>
          <td class="paramname"><em>nLogLevel</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bHead</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bFlush</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00110">110</a> 行定义.</p>

</div>
</div>
<a id="a7dfffc4e88454b3c3ebfd9ba784f2c8e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7dfffc4e88454b3c3ebfd9ba784f2c8e">&#9670;&nbsp;</a></span>delete_class_copy_operator()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">CSafeLogs::delete_class_copy_operator </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_c_safe_logs.html">CSafeLogs</a>&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="a7ecaa2fd3c7a077e8f5f625e07de1fee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7ecaa2fd3c7a077e8f5f625e07de1fee">&#9670;&nbsp;</a></span>FlushLog()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool CSafeLogs::FlushLog </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>刷新日志，将缓存中的数据直接写入文件中 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00087">87</a> 行定义.</p>

</div>
</div>
<a id="a79ac12b58225066b1533f190a579e64b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a79ac12b58225066b1533f190a579e64b">&#9670;&nbsp;</a></span>SetLogFileSize()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CSafeLogs::SetLogFileSize </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="tools_8h.html#a57be03562867144161c1bfee95ca8f7c">UINT64</a>&#160;</td>
          <td class="paramname"><em>nFileMaxSize</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>设置默认日志文件大小，单位（Byte） </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00065">65</a> 行定义.</p>

</div>
</div>
<a id="a41d1dba7d735f5340dca726f889f5090"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41d1dba7d735f5340dca726f889f5090">&#9670;&nbsp;</a></span>SetLogLevel()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CSafeLogs::SetLogLevel </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a>&#160;</td>
          <td class="paramname"><em>nLogLevel</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>设置日志级别 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00053">53</a> 行定义.</p>

</div>
</div>
<a id="a972c8fa984c8698181dcefbb2ac492fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a972c8fa984c8698181dcefbb2ac492fb">&#9670;&nbsp;</a></span>SetLogPath()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CSafeLogs::SetLogPath </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="tools_8h.html#a65c91f8d7af3c67b8a21e089fdddd0fe">TCHAR</a> *&#160;</td>
          <td class="paramname"><em>szLogPath</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>设置日志路径 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00043">43</a> 行定义.</p>

</div>
</div>
<a id="a94a6c995167ac24ca71660e48fd0ce32"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a94a6c995167ac24ca71660e48fd0ce32">&#9670;&nbsp;</a></span>SetSwitchFile()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CSafeLogs::SetSwitchFile </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="tools_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a>&#160;</td>
          <td class="paramname"><em>nfTime</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>设置切换日志文件时间(单位秒) </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00071">71</a> 行定义.</p>

</div>
</div>
<a id="a2a129a4fcd8c51a5c6830098943cf7bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2a129a4fcd8c51a5c6830098943cf7bb">&#9670;&nbsp;</a></span>SetWriteConsole()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CSafeLogs::SetWriteConsole </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>isWriteConsole</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>设置是否输出到控制台 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00059">59</a> 行定义.</p>

</div>
</div>
<a id="aeb6f84401d06477a6dc85cb44f029fc7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb6f84401d06477a6dc85cb44f029fc7">&#9670;&nbsp;</a></span>SwitchLogFile()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool CSafeLogs::SwitchLogFile </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>切换日志文件 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00146">146</a> 行定义.</p>

</div>
</div>
<a id="a67a16f7ebc22906bf159e3a8f88c5124"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a67a16f7ebc22906bf159e3a8f88c5124">&#9670;&nbsp;</a></span>WriteLog() <span class="overload">[1/3]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a> CSafeLogs::WriteLog </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>szLog</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a>&#160;</td>
          <td class="paramname"><em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a>&#160;</td>
          <td class="paramname"><em>nLogLevel</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00082">82</a> 行定义.</p>

</div>
</div>
<a id="ab6c462e9c6af249f86949eeb83b4d7db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab6c462e9c6af249f86949eeb83b4d7db">&#9670;&nbsp;</a></span>WriteLog() <span class="overload">[2/3]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a> CSafeLogs::WriteLog </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>szLog</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a>&#160;</td>
          <td class="paramname"><em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a>&#160;</td>
          <td class="paramname"><em>nLogLevel</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bHead</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>bFlush</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00104">104</a> 行定义.</p>

</div>
</div>
<a id="a1b5d1015ebfbb6596c5a889605679c57"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1b5d1015ebfbb6596c5a889605679c57">&#9670;&nbsp;</a></span>WriteLog() <span class="overload">[3/3]</span></h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a> CSafeLogs::WriteLog </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>szLog</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a>&#160;</td>
          <td class="paramname"><em>nLogLevel</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00077">77</a> 行定义.</p>

</div>
</div>
<a id="a353b09fdf1a3a8f57d41c0cd94825765"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a353b09fdf1a3a8f57d41c0cd94825765">&#9670;&nbsp;</a></span>WriteLogHead()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="tools_8h.html#ae44d8d5d0e473c82cf8f2021a86cb6a4">fsize_t</a> CSafeLogs::WriteLogHead </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="logdef_8h.html#aca1fd1d8935433e6ba2e3918214e07f9">LogLevel</a>&#160;</td>
          <td class="paramname"><em>nLogLevel</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>写入日志头 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a> 第 <a class="el" href="_safe_log_8cpp_source.html#l00094">94</a> 行定义.</p>

</div>
</div>
<h2 class="groupheader">类成员变量说明</h2>
<a id="a5b6ad5c65a41d59cd6c40a87ca173d93"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b6ad5c65a41d59cd6c40a87ca173d93">&#9670;&nbsp;</a></span>_file</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_c_file.html">CFile</a> CSafeLogs::_file</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>文件类 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8h_source.html">SafeLog.h</a> 第 <a class="el" href="_safe_log_8h_source.html#l00072">72</a> 行定义.</p>

</div>
</div>
<a id="abed76fa949bfb689a91dd7f86eb68634"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abed76fa949bfb689a91dd7f86eb68634">&#9670;&nbsp;</a></span>_fileMutex</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_c_mutex.html">CMutex</a> CSafeLogs::_fileMutex</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>文件锁 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8h_source.html">SafeLog.h</a> 第 <a class="el" href="_safe_log_8h_source.html#l00073">73</a> 行定义.</p>

</div>
</div>
<a id="a792e2fc28b9c58bf53c98163e055a5dd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a792e2fc28b9c58bf53c98163e055a5dd">&#9670;&nbsp;</a></span>_isWriteConsole</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool CSafeLogs::_isWriteConsole</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>是否写入控制台 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8h_source.html">SafeLog.h</a> 第 <a class="el" href="_safe_log_8h_source.html#l00081">81</a> 行定义.</p>

</div>
</div>
<a id="acfec8eab5ce3695c7f3c111bc42b9ddf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acfec8eab5ce3695c7f3c111bc42b9ddf">&#9670;&nbsp;</a></span>_nFileMaxSize</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="tools_8h.html#a57be03562867144161c1bfee95ca8f7c">UINT64</a> CSafeLogs::_nFileMaxSize</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>单个文件大小 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8h_source.html">SafeLog.h</a> 第 <a class="el" href="_safe_log_8h_source.html#l00074">74</a> 行定义.</p>

</div>
</div>
<a id="a3dd941c690e7a627b27eca4c62f7d91a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3dd941c690e7a627b27eca4c62f7d91a">&#9670;&nbsp;</a></span>_nFlushTime</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="tools_8h.html#a36cb3b01d81ffd844bbbfb54003e06ec">UINT</a> CSafeLogs::_nFlushTime</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>每隔多长时间刷新一次日志 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8h_source.html">SafeLog.h</a> 第 <a class="el" href="_safe_log_8h_source.html#l00075">75</a> 行定义.</p>

</div>
</div>
<a id="a4b0aebbbd5501c2d7924fcf90f169e9c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4b0aebbbd5501c2d7924fcf90f169e9c">&#9670;&nbsp;</a></span>_nLogLevel</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_find_file_8h.html#a37cc1038758216808d5f75090b093c9a">int</a> CSafeLogs::_nLogLevel</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>当前日志级别 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8h_source.html">SafeLog.h</a> 第 <a class="el" href="_safe_log_8h_source.html#l00080">80</a> 行定义.</p>

</div>
</div>
<a id="a56df89a4b10c88b3f510ce1353e3ff76"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a56df89a4b10c88b3f510ce1353e3ff76">&#9670;&nbsp;</a></span>_strCurPath</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_string_imp_8h.html#a2024a29cf6ecb0ef87f0bc2ef277a7e9">StringImp</a>&lt;<a class="el" href="_string_tools_8h.html#a816fa58fd77499b0edb2c69ebe803d5c">tstring</a>&gt; CSafeLogs::_strCurPath</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>当前文件路径 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8h_source.html">SafeLog.h</a> 第 <a class="el" href="_safe_log_8h_source.html#l00079">79</a> 行定义.</p>

</div>
</div>
<a id="a08dde93476a99eabe315b0c618f05ecc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08dde93476a99eabe315b0c618f05ecc">&#9670;&nbsp;</a></span>_strFileName</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_string_imp_8h.html#a2024a29cf6ecb0ef87f0bc2ef277a7e9">StringImp</a>&lt;<a class="el" href="_string_tools_8h.html#a816fa58fd77499b0edb2c69ebe803d5c">tstring</a>&gt; CSafeLogs::_strFileName</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>当前的文件名称 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8h_source.html">SafeLog.h</a> 第 <a class="el" href="_safe_log_8h_source.html#l00078">78</a> 行定义.</p>

</div>
</div>
<a id="a50d55056cc11242a56bdab1aeb5e43ff"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a50d55056cc11242a56bdab1aeb5e43ff">&#9670;&nbsp;</a></span>_strLogPath</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="_string_imp_8h.html#a2024a29cf6ecb0ef87f0bc2ef277a7e9">StringImp</a>&lt;<a class="el" href="_string_tools_8h.html#a816fa58fd77499b0edb2c69ebe803d5c">tstring</a>&gt; CSafeLogs::_strLogPath</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>当前的文件路径 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8h_source.html">SafeLog.h</a> 第 <a class="el" href="_safe_log_8h_source.html#l00077">77</a> 行定义.</p>

</div>
</div>
<a id="aef956466255d247b0353aa78b683cd68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef956466255d247b0353aa78b683cd68">&#9670;&nbsp;</a></span>_tLastWrite</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">time_t CSafeLogs::_tLastWrite</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>上一次写入的时间 </p>

<p class="definition">在文件 <a class="el" href="_safe_log_8h_source.html">SafeLog.h</a> 第 <a class="el" href="_safe_log_8h_source.html#l00076">76</a> 行定义.</p>

</div>
</div>
<hr/>该类的文档由以下文件生成:<ul>
<li>H:/project/LibTools/src/log/<a class="el" href="_safe_log_8h_source.html">SafeLog.h</a></li>
<li>H:/project/LibTools/src/log/<a class="el" href="_safe_log_8cpp_source.html">SafeLog.cpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
制作者 &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.16
</small></address>
</body>
</html>
